package com.ai.service.made;

import com.ai.common.CommonResponse;
import com.ai.entity.made.ModbusServerInfo;
import com.ai.entity.made.page.ModbusServerInfoPage;
import com.ai.model.dto.ModbusServerInfoDto;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;

/**
 * <p>
 *  服务类
 * </p>
 *
 * @author jiaok
 * @since 2024-11-26
 */
public interface IModbusServerInfoService extends IService<ModbusServerInfo> {

    /**
     * 新增modbus服务
     * @param modbusServerInfoDto modbus信息
     * @return 结果
     */
    CommonResponse<String> add(ModbusServerInfoDto modbusServerInfoDto);

    /**
     * 删除指定的modbus服务
     * @param id 目标id
     * @return 结果
     */
    CommonResponse<String> delete(String id);

    /**
     * 修改modbus服务信息
     * @param modbusServerInfoDto -modbus信息
     * @return
     */
    CommonResponse<String> edit(ModbusServerInfoDto modbusServerInfoDto);

    /**
     * modbus服务分页
     * @param page 参数
     * @return
     */
    IPage selectByPage(ModbusServerInfoPage page);

    /**
     * 读取所有modbus设备及节点信息
     */
    void readModbusServerNodeInfo();

}
